<?php

longArgNamesWithComments(

  // Hello World

  $longlonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglong1,

  // Hello World

  $longlonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglong2,

  /* Hello World */
  $longlonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglong3


);

shortArgNames(


  $short,

  $short2,
  $short3
);

comments(

  // Comment

  /* Some comments */
  $short,
  /* Another comment */


  $short2, // Even more comments


  /* Another comment */


  // Long Long Long Long Long Comment



  /* Long Long Long Long Long Comment */
  // Long Long Long Long Long Comment

  $short3
  // More comments


);

differentArgTypes(

  function () {
    return true;
  },

  isTrue ?
    doSomething() : 12

);

moreArgTypes(

  [1, 2,
    3],

  [
    'name' => 'Hello World',
    'age' => 29
  ],

  doSomething(

    // Hello world


    // Hello world again
    [ 'name' => 'Hello World', 'age' => 34 ],


    $oneThing
      + $anotherThing

    // Comment

  )

);

evenMoreArgTypes(
  doSomething(
    [ 'name' => 'Hello World', 'age' => 34 ],


    true

  ),

  14,

  1 + 2
    - 90/80,

  !98 *
    60 -
    90



);

$foo->apply(null,

// Array here
[1, 2]);


$bar->on("readable",

function () {
  doStuff();
});

foo(['A, B'],

/* function here */
function () { return true; });

$doSomething->apply(null,

// Comment

[
  'Hello world 1',
  'Hello world 2',
  'Hello world 3',
]);


doAnotherThing("node",

[
  $solution_type,
  $time_frame
]);

$stuff->doThing($someStuff,

  -1, [
  'accept' => function($node) { doSomething($node); }
]);

doThing(

  $someOtherStuff,

  // This is important
  true, [
  'decline' => function ($creditCard) { takeMoney($creditCard); }
]

);

func(
  function () {
   thing();
  },

  [ 'yes' => true, 'no' => 5 ]
);

doSomething(

   [ 'tomorrow' => $maybe, 'today' => $never[$always] ],

   1337,

   /* Comment */

   // This is important
   [ $helloWorld, $someImportantStuff ]


);
